package com.relytosoft.mizar.media.system.api.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.relytosoft.dubhe.common.core.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * SysDistrict
 *
 * @Author SunLi
 * @Date: 2022/4/7 14:14
 * @Version 1.0
 */
@TableName("SYS_DISTRICT")
@ApiModel("SysDistrict")
public class SysDistrict extends BaseEntity {

    private static final long serialVersionUID = 1L;
    /**
     * 区域ID
     */
    @ApiModelProperty(value = "区域ID")
    @TableId(value="ID", type= IdType.AUTO)
    private Integer id;

    /**
     * 父区域ID
     */
    @ApiModelProperty(value = "父区域ID")
    @TableField("PARENT_ID")
    @NotNull(message = "父部门不能为空")
    private Integer parentId;

    /**
     * 深度路径
     */
    @ApiModelProperty(value = "深度路径")
    @TableField("DEPTH_PATH")
    private String depthPath;

    /**
     * 深度
     */
    @ApiModelProperty(value = "深度")
    @TableField("DEPTH")
    private Integer depth;

    /**
     * 区域名称
     */
    @ApiModelProperty(value = "区域名称", required = true)
    @TableField("NAME")
    @NotBlank(message = "区域名称不能为空")
    private String name;

    /**
     * 区域编码
     */
    @ApiModelProperty(value = "区域编码")
    @TableField("CODE")
    private String code;

    /**
     * 安全级别
     */
    @ApiModelProperty(value = "安全级别")
    @TableField("SECURITY_LEVEL_ID")
    private Integer securityLevelId;

    /**
     * 区域类型
     */
    @ApiModelProperty(value = "区域类型")
    @TableField("TYPE")
    private Integer type;

    /**
     * 排序
     */
    @ApiModelProperty(value = "排序")
    @TableField("SORT")
    private Integer sort;

    /**
     * 区域图片;图片ID
     */
    @ApiModelProperty(value = "区域图片;图片ID")
    @TableField("DISTRICT_IMG")
    private Integer districtImg;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    @TableField("LONG_ITUDE")
    private BigDecimal longItude;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @TableField("LAT_ITUDE")
    private BigDecimal latItude;

    /**
     * 最大滞留人数
     */
    @ApiModelProperty(value = "最大滞留人数")
    @TableField("MAX_PERSON")
    private Integer maxPerson;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    @TableField("REMARK")
    private String remark;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    @TableField("STATUS")
    private Integer status;


    public Integer getRelatedPlatformId() {
        return relatedPlatFormId;
    }

    public void setRelatedPlatformId(Integer relatedPlatFormId) {
        this.relatedPlatFormId = relatedPlatFormId;
    }

    public String getParentPlatformId() {
        return parentPlatFormId;
    }

    public void setParentPlatformId(String parentPlatFormId) {
        this.parentPlatFormId = parentPlatFormId;
    }

    /**
     * 第三方平台关联主键ID
     */
    @TableField(exist = false)
    private Integer relatedPlatFormId;
    /**
     * 第三方平台父级关联ID
     */
    @TableField(exist = false)
    private String parentPlatFormId;

    /**
     * 获得区域ID
     */
    public Integer getId(){
        return this.id;
    }
    /**
     * 设置区域ID
     */
    public void setId(Integer id){
        this.id = id;
    }

    /**
     * 获得父区域ID
     */
    public Integer getParentId(){
        return this.parentId;
    }
    /**
     * 设置父区域ID
     */
    public void setParentId(Integer parentId){
        this.parentId = parentId;
    }

    /**
     * 获得深度路径
     */
    public String getDepthPath(){
        return this.depthPath;
    }
    /**
     * 设置深度路径
     */
    public void setDepthPath(String depthPath){
        this.depthPath = depthPath;
    }

    /**
     * 获得深度
     */
    public Integer getDepth(){
        return this.depth;
    }
    /**
     * 设置深度
     */
    public void setDepth(Integer depth){
        this.depth = depth;
    }

    /**
     * 获得区域名称
     */
    public String getName(){
        return this.name;
    }
    /**
     * 设置区域名称
     */
    public void setName(String name){
        this.name = name;
    }

    /**
     * 获得区域编码
     */
    public String getCode(){
        return this.code;
    }
    /**
     * 设置区域编码
     */
    public void setCode(String code){
        this.code = code;
    }

    /**
     * 获得安全级别
     */
    public Integer getSecurityLevelId(){
        return this.securityLevelId;
    }
    /**
     * 设置安全级别
     */
    public void setSecurityLevelId(Integer securityLevelId){
        this.securityLevelId = securityLevelId;
    }

    /**
     * 获得区域类型
     */
    public Integer getType(){
        return this.type;
    }
    /**
     * 设置区域类型
     */
    public void setType(Integer type){
        this.type = type;
    }

    /**
     * 获得排序
     */
    public Integer getSort(){
        return this.sort;
    }
    /**
     * 设置排序
     */
    public void setSort(Integer sort){
        this.sort = sort;
    }

    /**
     * 获得区域图片;图片ID
     */
    public Integer getDistrictImg(){
        return this.districtImg;
    }
    /**
     * 设置区域图片;图片ID
     */
    public void setDistrictImg(Integer districtImg){
        this.districtImg = districtImg;
    }

    /**
     * 获得经度
     */
    public BigDecimal getLongItude(){
        return this.longItude;
    }
    /**
     * 设置经度
     */
    public void setLongItude(BigDecimal longItude){
        this.longItude = longItude;
    }

    /**
     * 获得纬度
     */
    public BigDecimal getLatItude(){
        return this.latItude;
    }
    /**
     * 设置纬度
     */
    public void setLatItude(BigDecimal latItude){
        this.latItude = latItude;
    }

    /**
     * 获得最大滞留人数
     */
    public Integer getMaxPerson(){
        return this.maxPerson;
    }
    /**
     * 设置最大滞留人数
     */
    public void setMaxPerson(Integer maxPerson){
        this.maxPerson = maxPerson;
    }

    /**
     * 获得描述
     */
    public String getRemark(){
        return this.remark;
    }
    /**
     * 设置描述
     */
    public void setRemark(String remark){
        this.remark = remark;
    }

    /**
     * 获得状态
     */
    public Integer getStatus(){
        return this.status;
    }
    /**
     * 设置状态
     */
    public void setStatus(Integer status){
        this.status = status;
    }


    @Override
    public String toString() {
        return "SysDistrict{id="+id+
                ",parentId="+parentId+
                ",depthPath="+depthPath+
                ",depth="+depth+
                ",name="+name+
                ",code="+code+
                ",securityLevelId="+securityLevelId+
                ",type="+type+
                ",sort="+sort+
                ",districtImg="+districtImg+
                ",longItude="+longItude+
                ",latItude="+latItude+
                ",maxPerson="+maxPerson+
                ",remark="+remark+
                ",status="+status+
                ",createdId="+createdId+
                ",createdBy="+createdBy+
                ",createdTime="+createdTime+
                ",updatedId="+updatedId+
                ",updatedBy="+updatedBy+
                ",updatedTime="+updatedTime+
                "}";
    }
}

